#include <stdio.h>    // 提供输入输出函数：printf, scanf, fgets 等
#include <string.h>   // 提供字符串处理函数：strtok, strncat, strcat, strlen, strcspn 等
#include <ctype.h>    // 提供字符处理函数：isupper, islower, toupper, tolower 等

#define MAX_LEN 1000  // 定义字符串最大长度

// 将 token 根据大小写数量进行统一大小写转换
void convert(char *token) {
    int upCount = 0;      // 大写字母计数
    int lowCount = 0;     // 小写字母计数

    // step 1# 统计字符串中大写和小写字母数量
    for(int i = 0; i < strlen(token); i++) {
        if (isupper(token[i])) upCount++;  // 是大写字母
        if (islower(token[i])) lowCount++; // 是小写字母
    }

    // step 2# 若大写字母多于小写字母，则将所有字母转为大写
    if (upCount > lowCount) {
        for(int i = 0; i < strlen(token); i++) {
            if (islower(token[i])) token[i] = toupper(token[i]); // 转为大写
        }
    }

    // step 3# 若小写字母多于大写字母，则将所有字母转为小写
    if (upCount < lowCount) {
        for(int i = 0; i < strlen(token); i++) {
            if (isupper(token[i])) token[i] = tolower(token[i]); // 转为小写
        }
    }
}

int main() {
    // step 1# 读取分组长度 k
    int k;
    scanf("%d\n", &k);     // 输入分组长度

    // step 2# 读取输入字符串
    char string[MAX_LEN];  
    fgets(string, sizeof(string), stdin);  // 从标准输入读取整行字符串
    string[strcspn(string, "\n")] = 0;     // 去掉行末的换行符

    // step 3# 提取第一个子串（即第一个分组前的部分）
    char *token = strtok(string, "-");     // 用'-'分割字符串，获取第一个分段
    printf("%s", token);                   // 直接输出第一个分段

    // step 4# 串联剩余所有子串（去掉所有"-"）
    char subString[MAX_LEN] = "";          
    while ((token = strtok(NULL, "-")) != NULL) {
        strcat(subString, token);          // 将后续所有部分拼接成一个长串
    }

    // step 5# 将拼接后的字符串按每k个字符分组，用"-"连接
    char groupString[MAX_LEN] = "";        
    for(int i = 0; i < strlen(subString); i++) {
        strncat(groupString, &subString[i], 1); // 每次拼接一个字符

        // 每k个字符后添加一个'-'，但不在末尾添加
        if ((i + 1) % k == 0 && (i + 1) != strlen(subString)) {
            strcat(groupString, "-"); // 添加分隔符
        } 
    }

    // step 6# 对每个分组调用convert函数并输出结果
    char *curToken = strtok(groupString, "-"); // 按'-'再次分组
    while (curToken != NULL) {
        convert(curToken);                     // 大小写转换
        printf("-%s", curToken);               // 输出格式化结果
        curToken = strtok(NULL, "-");          // 获取下一个分组
    }

    return 0;
}
